<?php
/**
 * @version 1.4
 * @author Misha Klomp
 * 
 * deze file doet:
 * - verbinding maken met DB
 * - de deelnemer tabel lezen/schrijven/updaten
 * 
 * hoe werkt dit:
 * - als je de constuctor aanroept met als input een versie ID dan worden alle atributen gevuld met deze info
 * 
 *     $test = new DbActie(15);
 *     
 *     if(!$test->getActieId()){
 *         echo "Niet gevonden.";
 *     } else {
 *         echo $test->getActieId();
 *     }
 * 
 */

require_once '../defs/constants.php';
require_once FILE_DB_DATABASE;

class DbDeelnemer extends Database{
    
    private $deelnemer_id = '';
    private $deelnemer;
    
    public function DbDeelnemer($id= ''){
        if (DEBUG_LVL & DEBUG_LVL_CLASS) echo __FILE__ . __LINE__ .': ' . __CLASS__ .'<BR/>';
        
        parent::__construct();
        // If deelnemer id get versie data
        if (!empty ($id)){
            $this->DbGetDeelnemerData($id);
            
            return TRUE;
        }
        else {
            return FALSE;
        }
    }
    
    public function save ($deelnemer){
        
        if ($this->checkString($deelnemer, 45, 1)){
            
            $query = "INSERT INTO `deelnemer` (`deelnemer`) VALUES ( '" . mysql_real_escape_string($deelnemer) . "')";
        
            if (DEBUG_LVL & DEBUG_LVL_QUERY)  echo __FILE__ . ' ' . __LINE__ .': ' .$query . '<br />';

            if (!$this->dbquery($query)){
                return FALSE;
            }
            // Udate class attr
            $this->deelnemer_id = mysql_insert_id();
            $this->deelnemer = $deelnemer;
            
            return TRUE;
        }
        else {
            return FALSE;
        }
        
    }
    
    public function update ($deelnemer){
        if ($this->checkString($deelnemer, 45, 1)){
            
            $query = "UPDATE deelnemer SET deelnemer = ''" . mysql_real_escape_string($deelnemer) . "'' WHERE deelnemer . deelnemer_id ='" . mysql_real_escape_string($this->deelnemer_id) . "'";
            if (!$this->dbquery($query)){
                return FALSE;
            }
            
            $this->deelnemer = $deelnemer;
            
            return TRUE;
        }
        else {
            return FALSE;
        }
    }

    public function getDeelnemerId(){
        return $this->deelnemer_id;
    }
    
    public function getDeelnemer(){
        return $this->deelnemer;
    }
    
    // add2Inspectie( $inspectie_id )
    public function add2Inspectie ($inspectie_id){
        if (!empty ($this->deelnemer_id)&&!empty ($inspectie_id)){
            $query = "INSERT INTO `deelnemer_inspectie` ( `deelnemer_id`, `inspectie_id`) VALUES ( '" . mysql_real_escape_string($this->deelnemer_id) . "', '" . mysql_real_escape_string($inspectie_id) . "')";
        
            if (DEBUG_LVL & DEBUG_LVL_QUERY)  echo __FILE__ . ' ' . __LINE__ .': ' .$query . '<br />';

            if (!$this->dbquery($query)){
                return FALSE;
            }
            return TRUE;
        }
        else {
            return FALSE;
        }
    }

    private function DbGetDeelnemerData($id){
        
        $query = mysql_query("SELECT deelnemer FROM deelnemer WHERE deelnemer_id = '" . mysql_real_escape_string($id) . "' LIMIT 1 ");
        if (!$res = mysql_fetch_object($query)){
            
            $this->reset();
            return FALSE;
        }
        
        $this->deelnemer_id = $id;
        $this->deelnemer = $res->deelnemer;   
        if (DEBUG_LVL & DEBUG_LVL_QUERY) echo __FILE__ . ' ' . __LINE__ .': ' .$query . '<br />';
    }
    
    public function __destruct() {
        parent::__destruct();
    }
}

class TestDbDeelnemer{
    public function TestDbDeelnemer(){
        
    }
}
?>